Multicast is a technique for one-to-many communication for multi-party. With Multicast technique that is different from widely used Unicast technique, an optimized multicast forward path is established, thereby reducing data duplication and significantly reducing network resource consumptions from multi-party communication. In Multicast technique, a multicast forward tree is a forward path established from one (or a plurality of) source node(s) to multiple receiving nodes, where multicast data is transmitted via the multicast forward tree over the network for achieving an optimal forward efficiency.
Multicast may be implemented using various network protocols which may be categorized into two schemata, i.e., pure Internet Protocol (IP) schema and Multi-Protocol Label Switching (MPLS) schema. In the past, Multicast is deployed using the IP schema, while the MPLS is chiefly employed for Unicast IP forward. With the development of Multicast technique, MPLS Multicast gradually becomes hot issue. The multicast forward tree established based on MPLS is referred as Point to Multipoint (P2MP) Label Switch Path (LSP). The MPLS P2MP may be established with two protocols for selection, i.e., Resource Reservation Protocol-Traffic Engineering (RSVP-TE) protocol, and Label Distribution Protocol (LDP). The extended LDP supporting multicast is usually referred to as multicast Label Distribution Protocol (mLDP).
A P2PMP LSP can be formed eventually based on the RSVP-TE protocol or the mLDP. The mLDP may also generate a Multipoint to multipoint (MP2MP) LSP. For ease of illustration, the description herein is generally made by way of P2MP LSP in MPLS technique. The relating technique principle is also applicable to MPLS MP2MP LSP.
In actual implementation of the network, the topology of a multicast tree is established with the variation of multicast members. When a member joins, multicast protocol may add a branch path based on the network topology, i.e., a graft operation. When a member leaves, an unnecessary path may be deleted, i.e., a prune operation. Thus, a dynamic multicast forward tree is formed with the graft and the prune.
There are a lot of differences between the establishment of a P2MP LSP based on mLDP and the establishment of a P2MP LSP based on RSVP-TE. In the mLDP P2MP LSP, a leaf node actively initiates a joining operation and a prune operation, and a plurality of leafs cooperatively initiate the establishment of a whole structure of the tree. Basically, the multicast tree is created and deleted via a Label Mapping Message and a Label Withdraw Message of LDP.
The multicast forward tree may be dynamically produced in various techniques, and has two basic characteristics.    1. The leaf node knows clearly that it needs to join/leave this forward tree; determines a time for joining the forward tree, and initiates to join the forward tree via the protocol; determines a time for leaving the forward tree, initiates a prune operation, and destructs a corresponding forward branch.    2. The leaf initiates a joining request. Once the leaf successfully joins in, multicast data is forwarded to a corresponding leaf node. When the leaf successfully initiates a prune operation, the forward for related data is interrupted and a corresponding forward branch is withdrawn.
These two basic characteristics ensure that the multicast forward tree may dynamically determine an optimal forward tree based on a recipient, but bring associated problems at the same time.    1. A multicast forward tree is to be created upon the request initiated by the leaf. However, the leaf is not capable of being aware of whether whole multicast forward paths are successfully established. If an upstream node (not an adjacent upstream node, but an upstream router with one or more hops apart) of a certain leaf fails to process the joining request, then the forward path may not be established successfully. Thus, the leaf is not capable of acquiring information indicating that the forward path fails to be established, and accordingly, no further action can be performed.    2. When there is a change of the network topology, an original mLDP P2MP LSP will not be available since another mLDP P2MP LSP is established. Generally, the mLDP may automatically calculate a new path based on route. In some cases, however, the mLDP may not calculate a new path (e.g., when a network device fails), which results in a failure of normal forward. In such cases, the leaf may not acquire failure information or process successfully.
The P2MP LSP established based on mLDP is applicable to various scenarios, e.g., multicast virtual private network (MVPN) and Triple Play. The demands for Triple Play and MVPN multicast are increasing with the development of video services. The wide deployment of multicast is in progress and requires more reliabilities of multicast. The leaf node is usually a service receiver, or a core service provider edge (PE) device. When a failure occurs, the leaf node needs to know that the failure occurs and the reason of the failure, in order to take appropriate measure and ensure the normal service. Also, it is beneficial for the maintenance of the whole network by the network administrator that the leaf node knows the failure in the network. Therefore, the mLDP needs a corresponding mechanism for informing the leaf node of the type of the failure that occurs.
In implementing the present invention, it is discovered by the applicant that the conventional art encounters at least the defects below. According to the LDP/mLDP protocol, a Notification message is employed for notifying a failure during a protocol processing procedure. However, it is limited that the information is only about two neighboring Label Switch Routers (LSRs). When a direct downstream node of the LSR or path where the failure occurs finds out the failure, the node that finds out the failure may inform its upstream node via a Notification message. According to the current specifications of LDP/mLDP protocol, the failure information and the reason thereof may not be successively transferred to the leaf node. Thus, the leaf node may not acquire the failure information in time.